This invention is related in general to networks and more specifically relates to systems and methods for monitoring the behavior of networks and accompanying devices.
Systems for monitoring network behavior are employed in various demanding applications including network-topology troubleshooting, resource distribution and sharing, switch debugging, and bandwidth allocation. Such applications often demand versatile mechanisms that can facilitate rapid network troubleshooting and analysis to ensure optimal network performance.
Systems for monitoring network behavior are particularly important for monitoring network switching devices, which often propagate network changes through certain portions of the network, thereby particularly impacting network behavior. Switching devices include Layer-2 (L2), Layer-3 (L3), and multi-layer switches and routers. These devices are named in accordance with the Open Systems Interconnection (OSI) layer associated with the devices' operations. For example, a layer-2 switch performs various OSI-layer-2 (data layer) functions, such as defining packet sequencing and routing packets based on Media Access Control (MAC) addresses. Similarly, a layer-3 switch performs various functions associated with layer-3 (network layer) of the OSI standard model, which may include implementing various routing protocols. Multi-layer devices may perform functions associated with multiple layers of the OSI standard. A router performs various layer-3 functions, and consequently, is often considered to be a type of layer-3 switch.
Conventionally, when network characteristics, such as topology or traffic patterns, change, certain network resources may be redistributed or otherwise changed by switches in the network. For the purposes of the present discussion, a network resource may be any network entity or characteristic or associated identifier. Examples of network entities include computers, switches, interfaces, and so on. Examples of network characteristics include MAC flow rates, link bandwidth, Transmission Control Protocol (TCP) connection status, and so on. Examples of identifiers include Media Access Control (MAC) addresses associated with modules or other entities connected to the network.
Unfortunately, network administrators often lack sufficient information to accurately determine how network changes are affecting network performance. Consequently, network-problem troubleshooting is often problematic.
To facilitate network troubleshooting, certain debugging utilities installed in a switch or router console may be activated via a Command Line Interface (CLI). Unfortunately, such utilities often lack sufficient information to enable quick resolution of network problems or to enable integration of network resources without creating unforeseen problems.